{$CLEO}   

thread 'atcloth'  

2@ = 0  // 0 - moto-time OFF, 1 - moto-time ON

{---Player.Defined check---}
:PlayerDefined
wait 0
player.Defined($player_char)
jf @PlayerDefined

{--- Checking for a skin 'atarmy' ---}
:Check_army
wait 0
0500:   player $PLAYER_CHAR skin == 'atarmy'
jf @Check_hai
03F2: pedtype 9 remove_threat 1

{--- hecking for a skin 'athai' ---}
:Check_hai
wait 0
0500:   player $PLAYER_CHAR skin == 'athai'
jf @Off_hai_peace_boom
03F2: pedtype 8 remove_threat 1
03F1: pedtype 7 add_threat 1

:Off_hai_peace_boom
if and
0039:   $282 == 1
8500:   not player $player_char skin == 'athai' 
jf @Off_hai_peace_noboom
03F2: pedtype 7 remove_threat 1
03F1: pedtype 8 add_threat 1

:Off_hai_peace_noboom
if and
0039:   $282 == 0
8500:   not player $player_char skin == 'athai' 
jf @Check_bike
03F2: pedtype 7 remove_threat 1
03F2: pedtype 8 remove_threat 1

{--- Checking for a skin 'artbike'---}
:Check_bike
wait 0
0500:   player $PLAYER_CHAR skin == 'atbike'
jf @Territory_check_first
gosub @BIKESP_0

{--- Checking the presence of a player near pickups ---}
:Territory_check_first
if or
00F5:   player $player_char in_sphere 0 near_point 42.2786 -949.5353 10.459 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point 227.0858 -218.5113 11.8332 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point -1074.2493 -172.7121 11.4458 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point -852.1415 -1496.0107 12.1115 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point -75.5061 -1533.563 12.7287 radius 30.0 30.0 30.0  
jf @Territory_check_second
gosub @SkinChange
jump @PlayerDefined

:Territory_check_second
if or
00F5:   player $player_char in_sphere 0 near_point 621.3 835.1008 22.529 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point -1106.358 352.0634 11.6364 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point -1512.219 -923.6883 20.8823 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point 349.7804 -229.5472 19.6456 radius 30.0 30.0 30.0 
00F5:   player $player_char in_sphere 0 near_point -590.2682 621.8411 11.6814 radius 30.0 30.0 30.0 
jf @PlayerDefined
gosub @SkinChange
jump @PlayerDefined

{--- Gosub for sellect skins---}
:SkinChange

{--- Black Leather Jaket ---} 
:BlackLeather_Create
wait 0 
00F5:   player $player_char in_sphere 0 near_point 42.2786 -949.5353 10.459 radius 30.0 30.0 30.0    
jf @BrownLeather_Create  
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , 42.2786, -949.5353, 10.459)
model.Destroy(409)

:BlackLeather_Change  
wait 0 
00F5:   player $player_char in_sphere 0 near_point 42.2786 -949.5353 10.459 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @BlackLeather_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atbllea' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing a black leather jacket" 
jump @BlackLeather_Change  

{--- Brown Leather Jaket ---} 
:BrownLeather_Create 
wait 0 
00F5:   player $player_char in_sphere 0 near_point 227.0858 -218.5113 11.8332 radius 30.0 30.0 30.0    
jf @MechSuit_Create   
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , 227.0858, -218.5113, 11.8332)
model.Destroy(409)

:BrownLeather_Change  
wait 0 
00F5:   player $player_char in_sphere 0 near_point 227.0858 -218.5113 11.8332 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @BrownLeather_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atbrlea' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing a brown leather jacket" 
jump @BrownLeather_Change

{--- Mechanic suit ---} 
:MechSuit_Create   
wait 0
00F5:   player $player_char in_sphere 0 near_point -852.1415 -1496.0107 12.1115 radius 30.0 30.0 30.0    
jf @PrintSuit_Create 
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , -852.1415, -1496.0107, 12.1115)
model.Destroy(409)

:MechSuit_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point -852.1415 -1496.0107 12.1115 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @MechSuit_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atmech' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing a mechanic's suit" 
jump @MechSuit_Change

{--- Printing suit ---}
:PrintSuit_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point -1074.2493 -172.7121 11.4458 radius 30.0 30.0 30.0    
jf @BlueFormal_Create    
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , -1074.2493, -172.7121, 11.4458)
model.Destroy(409)

:PrintSuit_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point -1074.2493 -172.7121 11.4458 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @PrintSuit_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atprint' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing a printer's suit" 
jump @PrintSuit_Change

{--- Blue formal suit ---}
:BlueFormal_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point -75.5061 -1533.563 12.7287 radius 30.0 30.0 30.0    
jf @GreenFormal_Create    
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , -75.5061, -1533.563, 12.7287)
model.Destroy(409)

:BlueFormal_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point -75.5061 -1533.563 12.7287 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @BlueFormal_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atblfrm' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing a blue formal suit" 
jump @BlueFormal_Change 

{--- Green formal suit ---}
:GreenFormal_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point 621.3 835.1008 22.529 radius 30.0 30.0 30.0    
jf @PIG_Create     
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , 621.3, 835.1008, 22.529)
model.Destroy(409)

:GreenFormal_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point 621.3 835.1008 22.529 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @GreenFormal_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atgrfrm' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing a green formal suit" 
jump @GreenFormal_Change 

{--- Patrol Invest Group suit ---}
:PIG_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point -1512.219 -923.6883 20.8823 radius 30.0 30.0 30.0    
jf @Army_Create    
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , -1512.219, -923.6883, 20.8823)
model.Destroy(409)

:PIG_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point -1512.219 -923.6883 20.8823 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @PIG_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atpig' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You are wearing a Patrol Invest Group uniform" 
jump @PIG_Change 

{--- Army uniform ---}
:Army_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point -1106.358 352.0634 11.6364 radius 30.0 30.0 30.0    
jf @Bike_Create     
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , -1106.358, 352.0634, 11.6364)
model.Destroy(409)

:Army_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point -1106.358 352.0634 11.6364 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @Army_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atarmy' 
038B: load_requested_models 
0353: refresh_actor $player_actor 
035E: set_player $PLAYER_CHAR armour_to 200   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You're wearing an army uniform" 
jump @Army_Change

{--- Biker clothing ---}
:Bike_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point -590.2682 621.8411 11.6814 radius 30.0 30.0 30.0    
jf @Hait_Create    
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , -590.2682, 621.8411, 11.6814)
model.Destroy(409)

:Bike_Change
wait 0 
00F5:   player $player_char in_sphere 0 near_point -590.2682 621.8411 11.6814 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @Bike_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'atbike' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "You dressed brutal, biker clothes!" 
jump @Bike_Change

{--- Haitians Clothes ---}
:Hait_Create
wait 0
00F5:   player $player_char in_sphere 0 near_point 349.7804 -229.5472 19.6456 radius 30.0 30.0 30.0    
jf @return 
model.Load(409)    
038B: load_requested_models   
pickup.Create(0@,  409 ,2 , 349.7804, -229.5472, 19.6456)
model.Destroy(409)

:Hait_Change
wait 0
00F5:   player $player_char in_sphere 0 near_point 349.7804 -229.5472 19.6456 radius 30.0 30.0 30.0 
jf @pickup_destroy   
pickup.Picked_up(0@)
jf @Hait_Change    
fade 0 250   
wait 250  
0352: set_actor $player_actor skin_to 'athai' 
038B: load_requested_models 
0353: refresh_actor $player_actor   
wait 250   
fade 1 250   
0ACE: show_formatted_text_box "Now you look like a Haitian" 
jump @Hait_Change

{--- Destroy pickup ---}
:pickup_destroy   
pickup.Destroy(0@)    
jump @return  

{--- Biker Skill ---}
:BIKESP_0
wait 0 
if  and
Player.Defined($PLAYER_CHAR)
0039:   2@ == 0
jf @BIKESP_1
if and
0500:   player $PLAYER_CHAR skin == 'atbike' 
047E:   player $PLAYER_CHAR on_any_bike 
00E1:   player 0 pressed_button 16 
00E1:   player 0 pressed_button 19 
jf @return 

:BIKESP_0OT
wait 0 
if or
80E1:   not player 0 pressed_button 16 
80E1:   not player 0 pressed_button 19 
jf @BIKESP_0OT 
015D: set_gamespeed 0.5 
0ACE: show_formatted_text_box "MotoTime ON" 
2@ = 1

:BIKESP_1
wait 0 
if and
   Player.Defined($PLAYER_CHAR)
0039:   2@ == 1   
jf @return 
if 
047E:   player $PLAYER_CHAR on_any_bike 
jf @BIKESP_1OT 
if and
00E1:   player 0 pressed_button 16 
00E1:   player 0 pressed_button 19 
jf @BIKESP_1 

:BIKESP_1OT
wait 0  
if or
80E1:   not player 0 pressed_button 16 
80E1:   not player 0 pressed_button 19 
jf @BIKESP_1OT 
015D: set_gamespeed 1.0 
0ACE: show_formatted_text_box "MotoTime OFF"
2@ = 0 
jump @BIKESP_0 

:return
return